package cn.ly.proxy.staticProxy;

import cn.ly.proxy.IPerson;

/**
 * 静态代理对象
 * 即程序执行(编译)前，我们手动创建了代理
 */
public class Student2Proxy implements IPerson {
    //被代理的学生
    private Student2 stu;

    public Student2Proxy(IPerson stu) throws NullPointerException{
        if(stu.getClass() == Student2.class){//只代理学生对象
            this.stu = (Student2) stu;
        }
    }
    //代理，调用被代理学生的交学费函数
    @Override
    public void giveMoney() {
        System.out.println(">>>>>>>>>前置增强");
        stu.giveMoney();
        System.out.println(">>>>>>>>>>后置增强");
    }
}
